/*
	网络请求接口列表，所有网络请求放这里
*/

// import {POST} from '@/common/luchRequest.js'
// import {GET} from '@/common/luchRequest.js'
// import http from '@/common/luchRequest.js'
import {POST} from '@/common/axiosRequest.js'
import {GET} from '@/common/axiosRequest.js'
import http from '@/common/axiosRequest.js'

import print from '@/common/log.js'
import store from '@/store'
// import http from '@/network/http'
// Vue.use(http)
import md5 from 'js-md5'

export default {
	/*
		两种结构：
		haveCallbackFun: 接口本身先处理结果，再丢给调用方处理结果
		noCallbackFun: 直接丢给调用方处理结果
	*/
	
	noCallbackFun(param1, param2) {
		return POST('url',{param1:param1, param2:param2});
	},
	haveCallbackFun(param1, param2) {
		return new Promise((resolve, reject) => {
			POST('url',{param1:param1, param2:param2}).then(res => {
				// 处理结果
				let ret = true;
				if (ret) {
					resolve(res);
				} else {
					reject(res);
				}
				
			}).catch(error => {
				reject(error);
			});
		})
	},
	/*
		用户登录
	*/
    userLogin(username, password, logintype) {
		return new Promise((resolve, reject) => {
			POST("https://2d10f519-d95e-46d4-9fe3-2a6712914d56.bspapp.com/http/login",{
				username:username,
				password:md5(password),
				logintype:logintype
			}).then(res => {
				print.info('API-->登录响应: ', res.data);
				if (res && res.data && res.data.result) {
					if (res.data.result === 'success') {
						print.info("API-->登录成功");
						resolve(res.data);
					} else {
						print.error('API-->登录失败: ',res.data.msg);
						reject(res.data.msg);
					}
				} else {
					print.error('API-->登录反馈数据格式错误');
					reject('登录反馈数据格式错误');
				}
				
			}).catch(error => {
				print.error("API-->",error);
				reject(error);
			});
		})
	},
	userLogout() {
		return new Promise((resolve, reject) => {
			POST("https://2d10f519-d95e-46d4-9fe3-2a6712914d56.bspapp.com/http/logout",{
				
			}).then(res => {
				print.info('API-->退出登录响应: ', res.data);
				if (res && res.data && res.data.result) {
					if (res.data.result === 'success') {
						print.info("API-->退出登录成功");
						
						store.dispatch('user/logoutWithCallback',{}).then(res => {
							console.log('API-->清空用户信息成功');
							resolve(res.data);
						}).catch(error => {
							reject(error);
						});
		
					} else {
						print.error('API-->退出登录失败: ',res.data.msg);
						reject(res.data.msg);
					}
				} else {
					print.error('API-->退出登录，反馈数据格式错误');
					reject('登录反馈数据格式错误');
				}
				
			}).catch(error => {
				print.error(error);
				reject(error);
			});
		})
	}
}


